package com.yilin.platform.service.capital;


import com.baomidou.mybatisplus.extension.service.IService;
import com.yilin.platform.base_core.application.PageData;
import com.yilin.platform.entity.truck.TruckVehicle;
import com.yilin.platform.entity.user.Account;
import com.yilin.platform.entity.capital.AdvanceMoney;

import java.util.List;
import java.util.Map;

public interface IAdvanceMoneyService extends IService<AdvanceMoney> {

    //添加或者修改支出记录
    void  saveOrUpdateAdvanceMoneySubtract(Account account, AdvanceMoney advanceMoney, TruckVehicle truckVehicle);

    //添加或者收入

    void  saveOrUpdateAdvanceMoneyAdd(Account loginAccount, String accountId, AdvanceMoney advanceMoney, TruckVehicle truckVehicle,Boolean negative);

    Map<String, Object> getEmpAccountStatic(String accountId, String startDate, String endDate);

    //审核
    void  auditingAdvanceMoney(Account account, AdvanceMoney advanceMoney);

    //根据ID查询
    AdvanceMoney  getAdvanceMoneyById(String id);

    PageData<AdvanceMoney> getAdvanceMoneyPage(Account loginUser, AdvanceMoney query, Integer start, Integer limit);

    PageData<AdvanceMoney> getAdvanceMoneyByAccountPage(AdvanceMoney query, Integer start, Integer limit);

    List<Map<String,Object>> getAdvanceMoneyPage(String[] truckIds);

    Map<String,Object> getOrganizeAdvaceStatic(String organizeId);
}
